1. Field of the Invention
The present invention relates to search engines, and more specifically to a system and method for associating search results that were selected by users in previous search sessions.
2. Description of Related Art
The Internet is a massive, complex, and constantly growing environment in which terabytes of information can now be retrieved from computer systems at various locations. However, traversing and navigating the Internet becomes increasingly difficult and more of a time consuming endeavor as this explosive growth continues. Currently, searching for and finding relevant information on the Internet is a difficult task for both beginners and advanced users. Thus, it is becoming more and more important to improve the quality of the information that is returned in response to a user query.
With conventional search engines, a user looking for specific information on the Internet typically submits a query (i.e., a boolean logic construct of words) to the search engine. In response, the search engine uses the query to search the Internet for the desired information, and then returns a list containing zero or more search results based on what was found. Because the Internet is expanding rapidly, these searches are returning larger and larger sets of results. Therefore, the user is required to spend more and more time sifting through the results of a search in order to find the information that is actually of interest.
Typically, the list of search results returned by a conventional search engine is sorted by relevance based on how many times the words in the user""s query are found in each result. This type of indexing is done automatically based on a formula, and then all of the results returned by the search engine are presented to the user in an order determined by the relevancy scores. While this may be necessary the first time a query is made, a search engine is used by many users and two or more users often will independently search for similar information or topics. The conventional technique of automatically indexing and then listing all results for a query does not take advantage of the superior ability of humans to evaluate information.
Furthermore, recently proposed search result ordering techniques also fail to adequately improve the quality of the results that are returned to the user. For example, it has been proposed to order the results returned by a search engine according to the overall popularity of the results. In particular, each metadata abstract or URL (i.e., possible search result) is assigned a popularity count based on all user selections that have previously been made in response to all previous queries. Then, when a list of search results (i.e., URLs) is returned in response to a particular query, the search engine lists all of the results for the user in an order that is based on the popularity count for each result. In other words, the search results are merely ordered based on each results overall popularity with users in general. Like conventional search engines, such search result ordering techniques also fail to take advantage of the superior ability of humans to effectively evaluate search results.
Additionally, both the conventional search engines and the recently proposed search result ordering techniques fail to automatically sift through the search results so as to present the user with only the results that are actually of interest For example, it is common for a typical multiple keyword query of the Internet to return well in excess of 100,000 search results (i.e., URLs). With conventional search engines, at best the user is presented with a well ordered list that contains all of the results found by the search engine in response to the user""s query. Conventional search engines lack the ability to sort through the results so as to return a more manageable list to the user, while at the same time effectively providing the user with the information that is actually being sought.
In view of these drawbacks, it is an object of the present invention to remove the above-mentioned drawbacks and to provide a system and method for associating search results based on the search results selected by users in response to previous searches. The system monitors user search result selections relative to search queries. When a search is performed, the user can be presented with those search results that were previously selected by users in response to the same or a similar query. Thus, a user can leverage the knowledge and evaluation time of previous users that were searching for the same or similar information.
Another object of the present invention is to provide a system and method for automatically sifting through search results so as to present the relevant or most relevant results. Thus, a smaller and more focused search result list can be presented to the user.
One embodiment of the present invention provides a method for associating search results. According to the method, an original list of search results is provided to a first user in response to a first query, and the search results selected by the first user are recorded and associated with the first query. Additionally, a second query that is the same as or similar to the first query is received from a second user, and an alternate list of search results is provided to the second user. The alternate list lists those search results from the original list that have been associated with the first query due to selection by a user. In a preferred method, the original list of search results is displayed to the second user, a request is received to view the alternate list of search results, and the alternate list of search results is displayed to the second user.
Another embodiment of the present invention provides a system for providing search results. The system includes a search engine, a query database, and a controller. The search engine provides original lists of search results in response to queries, and the query database stores the search results selected by users in response to each of the queries. The controller provides an alternate list of search results in response to another query that is the same as or similar to one of the queries, with the alternate list of search results listing those search results from the original list that have been recorded in the query database as having been previously selected in response to the one query. In one preferred embodiment, the query database stores each selected search result, and for each stored searched result, an alternate results vector for each of the queries in response to which the stored search result was selected.
Other objects, features, and advantages of the present invention will become apparent from the following detailed description. It should be understood, however, that the detailed description and specific examples, while indicating preferred embodiments of the present invention, are given by way of illustration only and various modifications may naturally be performed without deviating from the present invention.